package com.grupobbva.seguridad.domain;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;

@Entity
public class Control {

	@EmbeddedId
	private ControlPK id;

	@Column(name="NOMBRE")
	private String nombre;
	
    @ManyToOne
	@JoinColumn(name="TIPO_ID")
	private TablaDetalle tipo;
	
    @ManyToOne
	@JoinColumn(name="ESTADO_ID")
	private TablaDetalle estado;

	@Column(name="USUARIO_CREACION")
	private String usuarioCreacion;

    @Temporal(TemporalType.TIMESTAMP)
	@Column(name="FECHA_CREACION")
	private Date fechaCreacion;

	@Column(name="USUARIO_MODIFICACION")
	private String usuarioModificacion;

    @Temporal(TemporalType.TIMESTAMP)
	@Column(name="FECHA_MODIFICACION")
	private Date fechaModificacion;
	
	@Transient
	private boolean seleccion;
	
	@Transient
	private boolean editable;
    
    public Control() {
		// TODO Auto-generated constructor stub
	}
    public Control(ControlPK id) {
		this.id = id;
	}

	public ControlPK getId() {
		return id;
	}

	public void setId(ControlPK id) {
		this.id = id;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public TablaDetalle getTipo() {
		return tipo;
	}

	public void setTipo(TablaDetalle tipo) {
		this.tipo = tipo;
	}

	public TablaDetalle getEstado() {
		return estado;
	}

	public void setEstado(TablaDetalle estado) {
		this.estado = estado;
	}

	public String getUsuarioCreacion() {
		return usuarioCreacion;
	}

	public void setUsuarioCreacion(String usuarioCreacion) {
		this.usuarioCreacion = usuarioCreacion;
	}

	public Date getFechaCreacion() {
		return fechaCreacion;
	}

	public void setFechaCreacion(Date fechaCreacion) {
		this.fechaCreacion = fechaCreacion;
	}

	public String getUsuarioModificacion() {
		return usuarioModificacion;
	}

	public void setUsuarioModificacion(String usuarioModificacion) {
		this.usuarioModificacion = usuarioModificacion;
	}

	public Date getFechaModificacion() {
		return fechaModificacion;
	}

	public void setFechaModificacion(Date fechaModificacion) {
		this.fechaModificacion = fechaModificacion;
	}
	public Boolean getSeleccion() {
		return seleccion;
	}
	public void setSeleccion(Boolean seleccion) {
		this.seleccion = seleccion;
	}
	public Boolean getEditable() {
		return editable;
	}
	public void setEditable(Boolean editable) {
		this.editable = editable;
	}
}
